home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1999 March / EnigmA AMIGA RUN 35 (1999)(G.R. Edizioni)(IT)[!][issue 1999-03].iso / earcd / devel / libx11 / include / x11 / xaw / simplemenu.h < prev    next >
C/C++ Source or Header  |  1999-01-01  |  5KB  |  150 lines

  1. /*
  2.  * $XConsortium: SimpleMenu.h,v 1.20 91/02/17 13:18:55 rws Exp $
  3.  *
  4.  * Copyright 1989 Massachusetts Institute of Technology
  5.  *
  6.  * Permission to use, copy, modify, distribute, and sell this software and its
  7.  * documentation for any purpose is hereby granted without fee, provided that
  8.  * the above copyright notice appear in all copies and that both that
  9.  * copyright notice and this permission notice appear in supporting
  10.  * documentation, and that the name of M.I.T. not be used in advertising or
  11.  * publicity pertaining to distribution of the software without specific,
  12.  * written prior permission.  M.I.T. makes no representations about the
  13.  * suitability of this software for any purpose.  It is provided "as is"
  14.  * without express or implied warranty.
  15.  *
  16.  * M.I.T. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
  17.  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL M.I.T.
  18.  * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
  19.  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
  20.  * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 
  21.  * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  22.  *
  23.  * Author:  Chris D. Peterson, MIT X Consortium
  24.  */
  25.  
  26. /*
  27.  * SimpleMenu.h - Public Header file for SimpleMenu widget.
  28.  *
  29.  * This is the public header file for the Athena SimpleMenu widget.
  30.  * It is intended to provide one pane pulldown and popup menus within
  31.  * the framework of the X Toolkit.  As the name implies it is a first and
  32.  * by no means complete implementation of menu code. It does not attempt to
  33.  * fill the needs of all applications, but does allow a resource oriented
  34.  * interface to menus.
  35.  *
  36.  * Date:    April 3, 1989
  37.  *
  38.  * By:      Chris D. Peterson
  39.  *          MIT X Consortium 
  40.  *          kit@expo.lcs.mit.edu
  41.  */
  42.  
  43. #ifndef _SimpleMenu_h
  44. #define _SimpleMenu_h
  45.  
  46. #include <X11/Shell.h>
  47. #include <X11/Xmu/Converters.h>
  48. #include <X11/Xfuncproto.h>
  49.  
  50. /****************************************************************
  51.  *
  52.  * SimpleMenu widget
  53.  *
  54.  ****************************************************************/
  55.  
  56. /* SimpleMenu Resources:
  57.  
  58.  Name             Class        RepType        Default Value
  59.  ----             -----        -------        -------------
  60.  background         Background        Pixel        XtDefaultBackground
  61.  backgroundPixmap    BackgroundPixmap    Pixmap          None
  62.  borderColor         BorderColor    Pixel        XtDefaultForeground
  63.  borderPixmap         BorderPixmap    Pixmap        None
  64.  borderWidth         BorderWidth    Dimension    1
  65.  bottomMargin        VerticalMargins    Dimension       VerticalSpace
  66.  columnWidth         ColumnWidth        Dimension       Width of widest text
  67.  cursor              Cursor             Cursor          None
  68.  destroyCallback     Callback        Pointer        NULL
  69.  height             Height        Dimension    0
  70.  label               Label              String          NULL (No label)
  71.  labelClass          LabelClass         Pointer         smeBSBObjectClass
  72.  mappedWhenManaged   MappedWhenManaged    Boolean        True
  73.  rowHeight           RowHeight          Dimension       Height of Font
  74.  sensitive         Sensitive        Boolean        True
  75.  topMargin           VerticalMargins    Dimension       VerticalSpace
  76.  width             Width        Dimension    0
  77.  x             Position        Position    0n
  78.  y             Position        Position    0
  79.  
  80. */
  81.  
  82. typedef struct _SimpleMenuClassRec*    SimpleMenuWidgetClass;
  83. typedef struct _SimpleMenuRec*        SimpleMenuWidget;
  84.  
  85. extern WidgetClass simpleMenuWidgetClass;
  86.  
  87. #define XtNcursor "cursor"
  88. #define XtNbottomMargin "bottomMargin"
  89. #define XtNcolumnWidth "columnWidth"
  90. #define XtNlabelClass "labelClass"
  91. #define XtNmenuOnScreen "menuOnScreen"
  92. #define XtNpopupOnEntry "popupOnEntry"
  93. #define XtNrowHeight "rowHeight"
  94. #define XtNtopMargin "topMargin"
  95.  
  96. #define XtCColumnWidth "ColumnWidth"
  97. #define XtCLabelClass "LabelClass"
  98. #define XtCMenuOnScreen "MenuOnScreen"
  99. #define XtCPopupOnEntry "PopupOnEntry"
  100. #define XtCRowHeight "RowHeight"
  101. #define XtCVerticalMargins "VerticalMargins"
  102.  
  103. /************************************************************
  104.  *
  105.  * Public Functions.
  106.  *
  107.  ************************************************************/
  108.  
  109. _XFUNCPROTOBEGIN
  110.  
  111. /*    Function Name: XawSimpleMenuAddGlobalActions
  112.  *    Description: adds the global actions to the simple menu widget.
  113.  *    Arguments: app_con - the appcontext.
  114.  *    Returns: none.
  115.  */
  116.  
  117. extern void XawSimpleMenuAddGlobalActions(
  118. #if NeedFunctionPrototypes
  119.     XtAppContext    /* app_con */
  120. #endif
  121. );
  122.  
  123. /*    Function Name: XawSimpleMenuGetActiveEntry
  124.  *    Description: Gets the currently active (set) entry.
  125.  *    Arguments: w - the smw widget.
  126.  *    Returns: the currently set entry or NULL if none is set.
  127.  */
  128.  
  129. extern Widget XawSimpleMenuGetActiveEntry(
  130. #if NeedFunctionPrototypes
  131.     Widget        /* w */
  132. #endif
  133. );
  134.  
  135. /*    Function Name: XawSimpleMenuClearActiveEntry
  136.  *    Description: Unsets the currently active (set) entry.
  137.  *    Arguments: w - the smw widget.
  138.  *    Returns: none.
  139.  */
  140.  
  141. extern void XawSimpleMenuClearActiveEntry(
  142. #if NeedFunctionPrototypes
  143.     Widget        /* w */
  144. #endif
  145. );
  146.  
  147. _XFUNCPROTOEND
  148.  
  149. #endif /* _SimpleMenu_h */
  150.